1
00:00:01,570 --> 00:00:05,550
Most beszéljünk a tömbök hurkolásának új módjáról,

2
00:00:05,550 --> 00:00:08,470
amelyet hatodik évben vezettek be.

3
00:00:08,470 --> 00:00:10,723
És ez a for-of hurok.

4
00:00:12,490 --> 00:00:16,283
És tegyük fel, hogy át akartuk nézni a teljes étlapunkat.

5
00:00:17,300 --> 00:00:20,000
Tehát kezdjük azzal, hogy újra létrehozunk,

6
00:00:20,000 --> 00:00:23,130
a tömb a teljes menüvel.

7
00:00:23,130 --> 00:00:28,130
És ehhez bővítjük az éttermi pont induló menüt

8
00:00:29,570 --> 00:00:33,923
és étterem pont főmenü.

9
00:00:34,840 --> 00:00:38,180
Tehát ebben a pillanatban semmi új.

10
00:00:38,180 --> 00:00:41,670
Most már tudja, hogyan kell hurkolni ezen a tömbön

11
00:00:41,670 --> 00:00:44,670
szabályos for ciklussal, ugye?

12
00:00:44,670 --> 00:00:46,860
Tehát minden lépésen keresztül kell mennie

13
00:00:46,860 --> 00:00:49,830
egy számláló felállításának, egy feltételnek

14
00:00:49,830 --> 00:00:52,170
és frissítse a számlálót is.

15
00:00:52,170 --> 00:00:53,820
És ez rengeteg munka.

16
00:00:53,820 --> 00:00:57,140
És ezért kaptuk most a for-of hurkot

17
00:00:57,140 --> 00:00:59,520
amelyben nincs szüksége ilyesmire.

18
00:00:59,520 --> 00:01:01,620
Ez sokkal egyszerűbb.

19
00:01:01,620 --> 00:01:03,360
És ez így működik.

20
00:01:03,360 --> 00:01:08,360
Még mindig a számára írunk, majd létrehozunk itt egy változót,

21
00:01:09,330 --> 00:01:11,400
nevezzük csak tételnek

22
00:01:11,400 --> 00:01:15,110
majd a menüből.

23
00:01:15,110 --> 00:01:19,823
Ezután egyszerűen ezt az elemet tudjuk bejelentkezni a konzolba.

24
00:01:21,190 --> 00:01:22,760
Szóval lássuk, működik-e

25
00:01:22,760 --> 00:01:25,710 sor:15%
és akkor elmagyarázom, miért működik

26
00:01:25,710 --> 00:01:28,060 sor:15%
és mit csinál ez a hurok.

27
00:01:28,060 --> 00:01:30,720 sor:15%
Tehát valóban minden elemünk itt van,

28
00:01:30,720 --> 00:01:33,720 sor:15%
egyénileg bejelentkezve a konzolra.

29
00:01:33,720 --> 00:01:35,950 sor:15%
Tehát ez a for-of hurok,

30
00:01:35,950 --> 00:01:37,360
amelyet for-ofnak neveznek

31
00:01:37,360 --> 00:01:42,360
mert ez az, majd a menü eleme, igaz?

32
00:01:42,790 --> 00:01:47,200
Tehát ez a ciklus automatikusan a teljes tömbön át fog hurkolni

33
00:01:47,200 --> 00:01:48,620
és minden iterációban,

34
00:01:48,620 --> 00:01:52,190
hozzáférést biztosít számunkra az aktuális tömbelemhez,

35
00:01:52,190 --> 00:01:54,690
amit itt megadhatunk.

36
00:01:54,690 --> 00:01:57,070
Tehát ebben az esetben ezt tételnek hívják,

37
00:01:57,070 --> 00:02:00,360
de természetesen bárminek nevezhetjük, ahogy akarjuk.

38
00:02:00,360 --> 00:02:03,040
És ha egyszerűen naplózzuk az aktuális elemet

39
00:02:03,040 --> 00:02:04,840
le a konzolig,

40
00:02:04,840 --> 00:02:07,570 sor:15%
nos, akkor ezt kapjuk.

41
00:02:07,570 --> 00:02:10,720 sor:15%
Egyszerűen minden elemet egyenként kell naplózni.

42
00:02:10,720 --> 00:02:12,560
És ez azért van, mert megint

43
00:02:12,560 --> 00:02:14,960
az item változó mindig

44
00:02:14,960 --> 00:02:18,180
az aktuális elem minden iterációban.

45
00:02:18,180 --> 00:02:21,840
És ugyanúgy, mint az if else utasításban,

46
00:02:21,840 --> 00:02:23,930
nem kell kódblokkot létrehoznunk

47
00:02:23,930 --> 00:02:28,533
amikor csak egy utasítást kell végrehajtanunk, oké?

48
00:02:29,720 --> 00:02:31,370
Szóval ez elég egyszerű,

49
00:02:31,370 --> 00:02:34,370
de ez nagyon szép mértékű akadályozás

50
00:02:34,370 --> 00:02:36,310
a szokásos for cikluson keresztül.

51
00:02:36,310 --> 00:02:38,700
Tehát ugyanezt megtehetjük ezzel,

52
00:02:38,700 --> 00:02:41,150
de anélkül, hogy aggódnia kellene

53
00:02:41,150 --> 00:02:43,230
az összes mögöttes részletet

54
00:02:43,230 --> 00:02:46,670
mint például a számlálók és feltételek.

55
00:02:46,670 --> 00:02:49,210
Ami szintén jó a for-of ciklusban,

56
00:02:49,210 --> 00:02:53,430
az, hogy továbbra is használhatjuk a folytatás és a szünet kulcsszavakat.

57
00:02:53,430 --> 00:02:56,270
És ez azért fontos, mert a következő részben

58
00:02:56,270 --> 00:02:59,020
megtanulod a tömbök hurkolásának egyéb módjait

59
00:02:59,020 --> 00:02:59,940
és azokban,

60
00:02:59,940 --> 00:03:03,760
nem fogod tudni folytatni vagy megtörni.

61
00:03:03,760 --> 00:03:06,053
Tehát ezt szem előtt kell tartania.

62
00:03:07,440 --> 00:03:11,100
De most mi van, ha a jelenlegi indexet is szeretnénk

63
00:03:11,100 --> 00:03:13,570
és nem csak az aktuális elem?

64
00:03:13,570 --> 00:03:15,450
Nos, a for-of ciklusban

65
00:03:15,450 --> 00:03:17,280
igazából ez egy kis fájdalom

66
00:03:17,280 --> 00:03:19,280
amikor szükségünk van erre az indexre,

67
00:03:19,280 --> 00:03:22,030
mert eredetileg a for-of ciklus

68
00:03:22,030 --> 00:03:25,930
valójában csak az aktuális elemet akarta megadni.

69
00:03:25,930 --> 00:03:27,790
Azonban mindkettőt megkaphatja

70
00:03:27,790 --> 00:03:29,973
és így kell majd csinálnod.

71
00:03:31,360 --> 00:03:34,683
Tehát újra és újra,

72
00:03:35,690 --> 00:03:37,053
nevezzük csak tárgynak,

73
00:03:38,160 --> 00:03:40,950
de most a menü helyett,

74
00:03:40,950 --> 00:03:43,220
most meg kell hívnunk a bejegyzéseket,

75
00:03:43,220 --> 00:03:45,093
egy módszer ezen a tömbön.

76
00:03:46,600 --> 00:03:51,600
Tehát bejegyzések, majd vessünk egy pillantást a tételre.

77
00:03:55,990 --> 00:03:57,723 sor:15%
És ahogy látod,

78
00:03:58,930 --> 00:04:01,390 sor:15%
az elemek mindegyike valójában egy tömb

79
00:04:01,390 --> 00:04:04,653 sor:15%
magában a tömbelemben található indexszel.

80
00:04:05,520 --> 00:04:07,060 sor:15%
Tehát gyorsan vessünk egy pillantást

81
00:04:07,060 --> 00:04:10,723 sor:15%
mi is valójában ez a titokzatos menüpont bejegyzés.

82
00:04:12,530 --> 00:04:14,803 sor:15%
Tehát a menü pont bejegyzései,

83
00:04:16,650 --> 00:04:21,320 sor:15%
és így itt kapjuk ezt a furcsa tömb iterátort.

84
00:04:21,320 --> 00:04:23,490 sor:15%
És ez nem igazán segít,

85
00:04:23,490 --> 00:04:25,370 sor:15%
de megismerjük az iterátorokat

86
00:04:25,370 --> 00:04:27,440 sor:15%
a tanfolyam végére.

87
00:04:27,440 --> 00:04:29,900 sor:15%
De ha ezt szeretnénk megnézni,

88
00:04:29,900 --> 00:04:32,830 sor:15%
ezt itt lényegében ki kell bővítenünk,

89
00:04:32,830 --> 00:04:35,160 sor:15%
a spread operátor segítségével

90
00:04:35,160 --> 00:04:38,363 sor:15%
majd hozzon létre egy új tömböt az alapján.

91
00:04:40,310 --> 00:04:42,700 sor:15%
Szóval ez megint csak egy pillantásra való

92
00:04:42,700 --> 00:04:46,100 sor:15%
hogy valójában melyik menü pont bejegyzései vannak.

93
00:04:46,100 --> 00:04:49,480 sor:15%
És így látjuk, hogy ez alapvetően egy tömb,

94
00:04:49,480 --> 00:04:52,190 sor:15%
amely minden pozícióban egy új tömböt tartalmaz,

95
00:04:52,190 --> 00:04:54,433 sor:15%
amely tartalmazza az elemet,

96
00:04:55,470 --> 00:04:58,800 sor:15%
tehát az adott elem elem entitás indexszáma

97
00:04:58,800 --> 00:05:00,930 sor:15%
az eredeti tömbben.

98
00:05:00,930 --> 00:05:02,430 sor:15%
És ezért kapjuk,

99
00:05:02,430 --> 00:05:05,750 sor:15%
nulla, egy, kettő, három, négy, öt, hat,

100
00:05:05,750 --> 00:05:09,843 sor:15%
valamint a menü összes eredeti eleme.

101
00:05:11,270 --> 00:05:12,710 sor:15%
És ez is az oka

102
00:05:12,710 --> 00:05:16,230 sor:15%
akkor miért kapjuk most ezt a kimenetet ebből a hurokból.

103
00:05:16,230 --> 00:05:19,380
Mert itt most alapvetően megvan az a tömb.

104
00:05:19,380 --> 00:05:23,470
És így a tömb minden egyes eleme

105
00:05:23,470 --> 00:05:24,853
hát ez az új tömb.

106
00:05:26,320 --> 00:05:30,180
És most, ha szeretnénk egy szép menüt nyomtatni,

107
00:05:30,180 --> 00:05:33,890
akkor most kihasználhatnánk ezeket az adatokat.

108
00:05:33,890 --> 00:05:36,830 sor:15%
Szóval ne naplózunk itt valami szebbet.

109
00:05:36,830 --> 00:05:38,203
Tehát egy sablon karakterlánc.

110
00:05:41,040 --> 00:05:45,120
Tehát vegyük az első elemet, amely nulla

111
00:05:45,120 --> 00:05:47,230 sor:15%
és akkor tulajdonképpen adjunk hozzá egyet

112
00:05:48,700 --> 00:05:51,490 sor:15%
hogy egyben kezdhessük a menüt.

113
00:05:51,490 --> 00:05:54,660
Tehát itt alapvetően szép menüként fogunk megjeleníteni

114
00:05:54,660 --> 00:05:56,200
egy igazi étteremben.

115
00:05:56,200 --> 00:05:59,073
És ott a számok nem nulláról kezdődnek, igaz?

116
00:06:01,460 --> 00:06:04,490
És most itt, akkor maga a tényleges tétel,

117
00:06:04,490 --> 00:06:06,253 sor:15%
tehát az első helyen van.

118
00:06:07,360 --> 00:06:10,570 sor:15%
És ez elég jól néz ki, nem?

119
00:06:10,570 --> 00:06:12,620 sor:15%
Szóval ez itt remekül működik,

120
00:06:12,620 --> 00:06:14,640 sor:15%
de valójában ezen a ponton vagyunk

121
00:06:14,640 --> 00:06:17,310 sor:15%
okosabb, mint ezt így csinálni.

122
00:06:17,310 --> 00:06:21,030
És ez azért van, mert ha az elem most egy tömb,

123
00:06:21,030 --> 00:06:22,690
destrukturálhatjuk.

124
00:06:22,690 --> 00:06:27,690
Nem kell kézzel venni a nulla és az egyes elemet,

125
00:06:27,690 --> 00:06:29,720
ez a régi iskola módszere.

126
00:06:29,720 --> 00:06:31,840
Tehát most csináljuk jobb módon.

127
00:06:31,840 --> 00:06:35,660
És így ténylegesen destrukturálhatjuk az elemet,

128
00:06:35,660 --> 00:06:38,160
tömb itt, itt.

129
00:06:38,160 --> 00:06:42,350
Mindössze annyit kell tennünk, hogy használjuk a destrukturálási feladatot

130
00:06:42,350 --> 00:06:45,290
majd hozzuk létre a két kívánt változót.

131
00:06:45,290 --> 00:06:50,290
Tehát nevezzük i-nek és elemnek el.

132
00:06:50,370 --> 00:06:55,220
Tehát itt használhatjuk az i és a here elemet.

133
00:06:55,220 --> 00:06:59,760 sor:15%
Tehát ez ki lett vizsgálva, és valóban ugyanúgy működik.

134
00:06:59,760 --> 00:07:01,580
És így még egyszer ezek a strukturálások

135
00:07:01,580 --> 00:07:04,690
itt egy kicsit könnyebbé tette az életünket.

136
00:07:04,690 --> 00:07:06,580
Szóval igazán remek kiegészítés

137
00:07:06,580 --> 00:07:09,890
ismét a JavaScript nyelvre.

138
00:07:09,890 --> 00:07:11,610
És ez természetesen igaz

139
00:07:11,610 --> 00:07:14,600
magának a for-of ciklusnak,

140
00:07:14,600 --> 00:07:16,440
ami szintén nagyban megkönnyíti

141
00:07:16,440 --> 00:07:18,033
tömbökön át hurkolni.


